/**
 * Created with IntelliJ IEDA.
 * Description:
 * User:86186
 * Date:2023-07-15
 * Time:11:09
 */
public class merge2 {

    /*
    BM87合并两个有序的数组
     */
    public  void merge(int A[], int m, int B[], int n) {
//        int[] newint = new int[m + n];
//        int index = 0;
//        int indexa = 0;
//        int indexb = 0;
//
//        while (m > 0 && n > 0){
//            if (A[indexa] <= B[indexb]){
//                newint[index++] = A[indexa];
//                indexa++;
//            }else {
//                newint[index++] = B[indexb];
//                indexb++;
//            }
//        }
//        if (m != 0){
//            for (int i = indexa; i < m; i++) {
//                newint[index++] = A[i];
//            }
//        }else {
//            for (int i = indexb; i < n; i++) {
//                newint[index++] = B[i];
//            }
//        }
//        return;
        int len = m+n-1;
        int i = m-1;
        int j = n-1;
        while(i >= 0 && j >= 0){
            if(A[i] > B[j]){
                A[len--] = A[i--];
            }else{
                A[len--] = B[j--];
            }
        }
        while(i >= 0){
            A[len--] = A[i--];
        }
        while(j >= 0){
            A[len--] = B[j--];
        }
    }
}
